<?php

// !!!!! NO ANY OUTPUT UNTILL SESSION START !!!!!

include "config.php";
include "./include/utils.php";
include "./include/blocks.php";

if (session_status() === PHP_SESSION_NONE) {
    session_start();
}

$db = false; // default, database not connected

$db = dbConnect();


$urlComponents = parse_url($_SERVER['REQUEST_URI']);
$path = $urlComponents['path'] ?? '';
$queryString = $urlComponents['query'] ?? '';
$segments = explode('/', trim($path, '/'));

$cmd = 'index';
$param = '';
$blog_post = "";
$path_elements = [];
$log = '';

$segments = array_filter($segments, function($segment) {
    return !empty($segment) && strtolower($segment) !== 'index.php';
});

if (!empty($segments)) {
    $cmdSegment = array_shift($segments);
    $cmd = preg_replace('/\.php$/', '', $cmdSegment);
    $param = !empty($segments) ? array_shift($segments) : '';
}

if ($cmd == "blog_list" && !empty($param)) {
    $sql = "SELECT * FROM \"blog-list\" WHERE \"URL\" = $1";
    $result = pg_query_params($db, $sql, [$param]);

    if (pg_num_rows($result) == 1) {
        $blog_post = pg_fetch_assoc($result);
        $cmd = 'blog_post';
    } else {
        http_response_code(404);
        echo "Post not found";
        exit;
    }
} elseif ($cmd == 'glossary_page.php' || $cmd == 'glossary_page') {
    $cmd = 'glossary_page';

} else {

}

if ($cmd == "manufacturing-optimization") {
    header('Location: /', true, 301);
    exit();
}

$file = "_" . $cmd . ".php";

if ($_SERVER['REQUEST_URI'] == '/index.php') {
    header('Location: /');
    exit();
}

include "./include/referrals.php";

if (file_exists($file) || ($blog_post !=="")) {
    echo "<!DOCTYPE html>";
    echo '<html lang="en-US">';
    echo '<head>';
    include "./include/header.php"; // login handler, session init

    echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"/css/main.css\">\n";
    echo "<script type=\"text/javascript\" src=\"/js/main.js\"></script>\n";

    $f2 = "css/" . $cmd . ".css";
    if (file_exists($f2)) {
        echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"/" . $f2 . "\">\n";
    }

    $f2 = "js/" . $cmd . ".js";
    if (file_exists($f2)) {
        echo "<script>";
        include $f2;
        echo "</script>\n";
    }

    echo "</head>\n";
    echo "<body>\n";
    echo "  <!-- PAGE START -->\n" .
        "  <div class=\"page\">";
    include "./include/nav_bar.php";
    if (file_exists($file)) {
        include $file;
    } else {
        ; // handle blog port
    }

    include "./include/footer.php";

    /*** Affiliates ***/




    echo "  <!-- PAGE END -->\n" .
        "  </div>";
    $log .= 'www';
    if (isset($_GET["debug"]) && $_GET["debug"] === "1" && in_array($_SERVER["REMOTE_ADDR"], $developers)) {

        echo '
        <button id="toggleDebugInfo" class="btn btn-primary btnGreen">Debug Info</button>
        <div id="debugInfo" style="display: none;">'.print_r($path_elements).'
            <div id="accordion">
                <div class="card">
                    <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordion">
                        <div class="card-body">
                            <div class="row">
                                <div class="col-6">
                                    <h4 class="card-title">--- Debug info ---</h4>
                                    <b>LOG</b>: '. $log . '<br>
                                    <b>Debug ip\'s:</b> ' . print_r($developers, true) . ' IP\'s only, current ip ' . $_SERVER["REMOTE_ADDR"] . '<br>
                                    <pre>
                                    <b>cmd:</b> '.$cmd.'   <b>param:</b> '.$param.'
                                    <b>POST</b> '; print_r($_POST); echo '
                                    <b>LOG</b> '; echo isset($_SESSION["log"]) ? $_SESSION["log"] : ''; unset($_SESSION["log"]); echo '
                                    <b>SESSION</b> '; print_r($_SESSION); echo '
                                    <b>GET</b> '; print_r($_GET); echo '
                                    <b>COOKIE</b> '; print_r($_COOKIE); echo '
                                    <b>SERVER</b> '; print_r($_SERVER); echo '
                                    </pre>
                                    </div>
                                <div class="col-6">
                                    <h4 class="card-title">--- Tools ---</h4>';
include "./include/affiliate.php";
echo                            '</div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <script>
            $(document).ready(function(){
                $("#toggleDebugInfo").click(function(){
                    $("#debugInfo").toggle();
                });
            });
        </script>';

    } else {
        echo $googScr;
    }

echo    '<!--Start of Tawk.to Script-->
        <script type="text/javascript">
        var Tawk_API=Tawk_API||{}, Tawk_LoadStart=new Date();
        (function(){
        var s1=document.createElement("script"),s0=document.getElementsByTagName("script")[0];
        s1.async=true;
        s1.src="https://embed.tawk.to/653e15aea84dd54dc4865747/1hdt89d2p";
        s1.charset="UTF-8";
        s1.setAttribute(\'crossorigin\',\'*\');
        s0.parentNode.insertBefore(s1,s0);
        })();
        </script>
        <!--End of Tawk.to Script-->';
    //echo "\n<pre>\n";
    //print_r(openssl_get_cipher_methods());
    //echo "\n</pre>\n";
    echo "\n</body></html>";
} else {
    if($cmd=="pix.gif"){
        recordUserAction($db);
        header('Content-Type: image/gif');
        echo base64_decode('R0lGODlhAQABAJAAAP8AAAAAACH5BAUQAAAALAAAAAABAAEAAAICBAEAOw==');
        file_put_contents("./out.txt", "<pre>". print_r($_SERVER, true));
    } else {
        http_response_code(404);
        echo display_msg("<BR><BR><BR>ERROR 404 - not found: " . $_SERVER['REQUEST_URI'] . " (cmd:" . $cmd . ")<BR><BR><BR><BR>");
    }

}

?>
